accumulate :: (a -> a) -> a -> [a]

accumulate fun val = val : accumulate fun (fun val)

testmaybe :: Int -> Maybe Int

testmaybe x = if (x > 10) then Just x else Nothing

withinPred :: (a -> a -> Bool) -> [a] -> Maybe a 

withinPred boolFun (x:y:rest) = if (boolFun x y)
					then Just x
					else
					(withinPred boolFun (y:rest) )
					
withinPred boolFun [] = Nothing     --Lista vacía

withinPred boolFun (x:[]) = Nothing --Lista con un solo elemento
